zarovnani znaku v Editu k pravemu okraji

Otázka od: Jan Rizek

16. 9. 2004 13:38

Pokud jsem neco neprehled, tak to v TEditu nejde.

Jak tohle resite, pokud mate na to svou komponentu, neposkytli by jste nejaky
navod, jak je to vyreseno?

  tesim se na odpovedi  

          JR

Odpovedá: Ing. Slavomir Timko

16. 9. 2004 14:00

> Pokud jsem neco neprehled, tak to v TEditu nejde.
>
> Jak tohle resite, pokud mate na to svou komponentu, neposkytli by jste
nejaky navod, jak je to vyreseno?

Jedno z rieseni je v TCustomEdit prepisat metodu CreateParams
(aj ked sa v helpe pise, ze: ES_RIGHT: right-aligns text in a multiline edit
control)

procedure TRightAlignEdit.CreateParams(var Params: TCreateParams);
begin
  inherited CreateParams(Params);
  Params.Style := Params.Style or ES_RIGHT;
end;

Slavo

>
> tesim se na odpovedi  
>
> JR
>
>


Odpovedá: Jaroslav Uher

16. 9. 2004 14:04

Jan Rizek wrote:
> Pokud jsem neco neprehled, tak to v TEditu nejde.
>
> Jak tohle resite, pokud mate na to svou komponentu, neposkytli by jste
> nejaky navod, jak je to vyreseno?

nejlepe potomkem TCustomMaskEdit, kde si pridas

FAlignment: TAlignment;

popripade dalsi properities

Jarek Uher



Odpovedá: Jan Rizek

17. 9. 2004 9:29

Ano dekuji za typ - nasel jsem komponentu EditAlign, kde to bylo reseno
nasledovne:

  case Alignment of
    taLeftJustify:
      Params.Style := Params.Style or LongWord(ES_Left);
    taRightJustify:
      Params.Style := Params.Style or LongWord(ES_Right);
    else //taCenter
      Params.Style := Params.Style or LongWord(ES_Center);
  end;

> Jedno z rieseni je v TCustomEdit prepisat metodu CreateParams
> (aj ked sa v helpe pise, ze: ES_RIGHT: right-aligns text in a multiline
edit
> control)
>
> procedure TRightAlignEdit.CreateParams(var Params: TCreateParams);
> begin
> inherited CreateParams(Params);
> Params.Style := Params.Style or ES_RIGHT;
> end;
>
> Slavo
>